---@class Table_LuaObjectItem
local Table_LuaObjectItem = BaseClass("Table_LuaObjectItem", IDataItem)

function Table_LuaObjectItem:__ctor()
	---@type number @唯一ID
	self.Id = 0
	---@type string @View脚本路径
	self.ScriptView = ""
	---@type string @Panel脚本路径
	self.ScriptPanel = ""
end

function Table_LuaObjectItem:Load(reader)
	self.temp = reader:ReadShortString()
	self.Id = tonumber(self.temp)
	self.ScriptView = reader:ReadString()
	self.ScriptPanel = reader:ReadString()
end

---@class Table_LuaObjectMgr : IDataMgr
local this = BaseClass("Table_LuaObjectMgr", IDataMgr)

function this:FileName()
	return "Txt/LuaObject.txt"
end

---@return Table_LuaObjectItem
function this:GetItemByKey(key)
	return self.super.GetItemByKey(self, key)
end

---@return Table_LuaObjectItem
function this:GetItemByIdx(idx)
	return self.super.GetItemByIdx(self, idx)
end

function this:Load(reader)
	local item = Table_LuaObjectItem()
	item:Load(reader)
	self.mItemDic[item.Id] = self.mDataCount
	table.insert(self.mItemList, item)
end

---@type Table_LuaObjectMgr
Table_LuaObjectMgr = this()